#pragma once

#include "Task.hpp"

namespace threadpool {

    class SuicideTask : public Task {

    public:

        /**
          * @brief  根据指定的优先级和任务函数创建线程自杀任务
          * @note   None
          * @param  priority 优先级
          * @param  func     任务函数
          */
        explicit SuicideTask(int priority, std::function<void()> func) :
                Task(priority, std::move(func)) {}

        std::string getType() const override { return "SuicideTask"; }

    };

}